A line driving circuit, or line driver, sources or sinks current to or from a circuit in order to change the state of the circuit. For purposes of explanation, sinking current will be referred to extensively. It should be understood where the current sink portion of the line driving circuit is described, that a corresponding current source structure in the current source portion is also included. Line driving circuits may be used in a memory module or buffer. Typically, such a circuit must source or sink current to change the state of the various devices that comprise the memory module or other device driven through a buffer. FIG. 1A is a circuit diagram illustrating a typical existing implementation of a line driving circuit.
The line driving circuit includes an input line with input voltage 105, an output line with output voltage 115, a PMOS transistor 101, and an NMOS transistor 103. The input line is connected to the gates of PMOS transistor 101 and NMOS transistor 103. The drain of transistor 101, the drain of transistor 103, and the output line are connected. The source of PMOS transistor 101 is connected to the high rail. The source of NMOS transistor 103 is connected to the low rail. Current 107 flows through PMOS transistor 101. Current 109 flows through NMOS transistor 103.
FIG. 1B is a plot illustrating current 109 vs. output voltage 115 for line driving circuit 1A. When line driving circuit 1A transitions from sourcing to sinking current, NMOS transistor 103 passes current 109 and drives down output voltage 115. Conversely, when line driving circuit 1A transitions from sinking to sourcing current, input voltage PMOS transistor 101 passes current 107 and drives up output voltage 115. Currents 107 and 109 are limited in size by their saturation levels.
FIG. 1C is a plot illustrating output voltage 115 vs. time when line driving circuit 1A transitions from sourcing to sinking current. The undesirable effects of cross-coupling, impedance matching, and overshoot and undershoot on the waveform are illustrated in the plot, and are discussed in the following paragraphs. Note that this plot may appear differently, depending on the phenomena present at any given time.
Capacitance or other interaction between output lines of the line driving circuit may cause cross-coupling. As a greater number of lines are driven, the effect of cross-coupling is increased. Cross coupling can cause an effect referred to as “push out,” where output voltage 115 increases slightly when it should be decreasing and vice versa. One approach that has been suggested for reducing push out is to increase the size of transistors 101 and 103. This has the effect of decreasing the impedance of transistors 101 and 103, which are coupled by the other switching lines. The decreased impedance helps counteract any effects caused by cross-coupling.
Increasing the size of transistors 101 and 103 may cause an impedance mismatch with the load. Impedance mismatch between the line driver and the circuit being driven may cause reflection. Impedance matching is a particular problem just before the output line reaches steady state during a state transition.
Overshoot and undershoot are another problem that may be caused by increasing the size of transistors 101 and 103. Overshoot and undershoot occur just when the output line is driven beyond the voltage desired for the new state being achieved by a state transition. For example, as line driving circuit 1A transitions from sourcing to sinking current, current 109 is initially large. As steady state is approached, output voltage 115 will tend to overshoot or undershoot due to the difficulty of suddenly restricting current 109 from a large to flow to substantially no flow.
It would be desirable to develop a design that would ameliorate cross-coupling, provide good impedance matching and prevent overshoot and undershoot.